include "TQuery.thrift"
namespace java com.iqiyi.pps.epg.api.model.web.sginal

const i32 IS_NOT_DELETE = 0
const i32 STATUS_INIT = 0;

struct TSginalServer {
    1:i32 id;
    2:i32 fatherId;
    3:string interfaceIp;
    4:string port;
    5:i32 inputType;
    6:string inputIp;
    7:i32 outputType;
    8:string outputIp;
    9:i32 sequence;
    10:i32 serverType;
    11:string ethNum;
    12:i32 isDelete;
    13:string addTime;
    14:string updateTime;
}

struct TSginalBase {
    1:i32 id;
    2:string name;
    3:string port;
    4:string accessServerIp;
    5:i32 status;
    6:string author;
    7:string addTime;
    8:string updateTime;
    9:i32 isDelete;
    10:list<TSginalServer> sginalServers;
}

struct TSginalDataPage{
    1:TQuery.TPage tPage;
    2:list<TSginalBase> result;
}

struct TSginalStatus {
    1:i64 id;
    2:i32 fatherId;
    3:string serverIp;
    4:string statusArgs;
    5:string addTime;
}

struct TSginalStatusDataPage {
    1:TQuery.TPage tPage;
    2:list<TSginalStatus> result;
}

struct TSginalLog {
    1:i64 id;
    2:i32 fatherId;
    3:string action;
    4:string descr;
    5:string user;
    6:string addTime;
}

struct TSginalLogDataPage {
    1:TQuery.TPage tPage;
    2:list<TSginalLog> result;
}

struct TServer {
    1:i32 id;
    2:string sn;
    3:string insideServerIp;
    4:string outsideServerIp;
    5:string port;
    6:string province;
    7:string city;
    8:i32 status;
    9:i32 serverType;
    10:string idc;
    11:string system;
    12:string version;
    13:string hardware;
    14:string remark;
    15:string addTime;
    16:string updateTime;
    17:string load;
    18:string dataFreePer;
    19:string allFreePer;
    20:string availableMemPer;
    21:string freeSwapPer;
    22:string inIcmploss;
    23:string outIcmploss;
    24:i32 monitor;
    25:i32 including;
    26:i32 cluster;
    27:string cluster_name;
    28:i32 now_including;
}

struct TServerDataPage {
    1:TQuery.TPage tPage;
    2:list<TServer> result;
}

struct TServerStatus {
    1:i64 id;
    2:i32 serverId;
    3:string load;
    4:string disk;
    5:string mem;
    6:i32 inputStatus;
    7:i32 outputStatus;
    8:string addTime;
    9:string dataFreePer;
    10:string allFreePer;
    11:string availableMemPer;
    12:string freeSwapPer;
    13:string inIcmploss;
    14:string outIcmploss;
}

struct TServerStatusDataPage {
    1:TQuery.TPage tPage;
    2:list<TServerStatus> result;
}

struct TVersionController {
    1:i64 id;
    2:i32 serverId;
    3:string zzdVersion;
    4:string encoderVersion;
    5:string mergeToolVersion;
    6:string mergeServiceVersion;
    7:string precisionCutToolVersion;
    8:i32 serverStatus;
    9:string updateTime;
    10:string insideServerIp;
    11:string hardware;
    12:string outsideIp;
    13:string remark;
    14:i32 status;
}

struct TVersionControllerDataPage {
    1:TQuery.TPage tPage;
    2:list<TVersionController> result;
}

struct TServerCluster {
    1:i32 id;
    2:string name;
    3:string idc;
    4:i32 status;
    5:string addTime;
    6:string user;
    7:string including;
    8:i32 serverNum;
}

struct TServerClusterDataPage {
    1:TQuery.TPage tPage;
    2:list<TServerCluster> result;
}

